feat(integrations): public task_due trigger + public CI + ecosystem README#19
Open
johnxie wants to merge 3 commits into
Open
feat(integrations): public task_due trigger + public CI + ecosystem README#19johnxie wants to merge 3 commits into
johnxie wants to merge 3 commits into
Conversation
…lls everywhere The repo listed @taskade/eslint-plugin (a PRIVATE GitHub Packages package) in `dependencies`, and .eslintrc.json extended `plugin:@taskade/base` from it. So `yarn install --frozen-lockfile` returned 401 Unauthorized for anyone without taskade-org package access — every CI run (master + all PRs) was red, and no external contributor could install or build this PUBLIC integration kit. The plugin was lint-only and CI never even ran lint, so it was pure breakage. - Remove the private dependency; regenerate yarn.lock. - Replace .eslintrc.json with a self-contained PUBLIC config (eslint + @typescript-eslint, lenient on the existing require()/any/@ts-ignore usage). - Add a `lint` script and run it in CI — now that linting is public and the code passes, CI actually enforces it. Verified locally: yarn install / yarn lint / yarn build / yarn test (4/4) all green. Unblocks #19 and every future contributor.
…cribeWebhook)
Move the task_due trigger off the internal /webhooks/zapier/{subscribe,unsubscribe}
routes onto the public, documented Action API v2:
- performSubscribe -> POST /api/v2/subscribeWebhook { targetUrl, triggerType:'task.due' }
- performUnsubscribe -> POST /api/v2/unsubscribeWebhook { hookId } (was DELETE + query param)
- account-level: the public endpoint ignores scope, so space/project inputs no longer
narrow the subscription (kept for forward-compat once scoped subscriptions ship)
- requires a paid plan (Pro+); free/Starter receive 402
- performList still uses the internal sample route (no public equivalent yet)
Depends on taskcade#26765 (subscribeWebhook endpoint + paywall), now merged.
README: drop the 'in progress' note; bump 1.1.0 -> 1.2.0.
45e195a to
40d73be
Compare
…ONTRIBUTING Reframe the README around the Taskade ecosystem and Genesis, add a tight badge row (Zapier/CI/License/API Docs), an ecosystem cross-link table (taskade, mcp, docs, awesome-vibe-coding, sample-app), an honest Platforms table (Zapier live, n8n source/publish-pending, others build-on-API), and a clarified OAuth2-vs-PAT auth note. Add CONTRIBUTING.md now that the repo installs with no auth or private registries. Every claim verified against the code on this branch (task_due on the public API, yarn lint present, no private deps).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Modernizes the Taskade Integration Kit end to end: the
task_duetrigger moves onto the public Action API v2, the repo becomes installable by anyone, and the README is reframed around the Taskade ecosystem & Genesis. Three commits, each independently reviewable.1 —
task_due→ public Action API v2Moves the trigger off Taskade's internal
/webhooks/zapier/*routes onto the public, documented endpoint any third party can use.POST /webhooks/zapier/subscribe{ hookUrl, triggerType:'TaskDue', … }POST /api/v2/subscribeWebhook{ targetUrl, triggerType:'task.due' }DELETE /webhooks/zapier/unsubscribe?hookId=POST /api/v2/unsubscribeWebhook{ hookId }Pro+ (free/Starter →
402). Account-level.performListstill uses the internal sample route (no public "recent due tasks" endpoint yet — noted in code). Dependency is LIVE:taskade/taskcade#26765shipped in v6.188.0 (f92f6623ed); verified against the live route (methods, bodies,{ ok, hookId }).2 — Public CI (folds in #20)
CI was red on every branch incl.
master:package.jsonlisted the private@taskade/eslint-plugin(GitHub Packages) independencies, soyarn install --frozen-lockfilereturned 401 for anyone without taskade-org access — no external contributor could even install this public repo. Dropped the private dep, swapped.eslintrc.jsonto a self-contained public config, added a CIlintstep. This is what turns the check green.3 — Discoverability overhaul (README + CONTRIBUTING)
Branded header + tight badge row, an ecosystem cross-link table (taskade/taskade · mcp · docs · awesome-vibe-coding · sample-app), a Genesis framing ("how the AI-native workspace reaches the outside world"), an honest Platforms table (Zapier live · n8n source/publish-pending · others build-on-API), clarified OAuth2-vs-PAT auth, and a new CONTRIBUTING.md.
Reviewed by a 3-lens adversarial pass (accuracy / Geist taste / newcomer) — every link checked 200, capabilities table verified against
src/, and every claim verified true on this branch.Verified locally
yarn install·yarn lint·yarn build·yarn test(4/4) all green — no private registries, no auth.🤖 Generated with Claude Code